WEB DYNAMIQUE
TP4 Carnet en PHP MYSQL avec Sessions
Exercice 1 : les pages va et viens
Créer 2 Pages PHP implémentant une session, et affichant un compteur qui s’incrémente à chaque rafraîchissement de la page 1 (page « compteur »).
Page 1 (page « compteur ») :
· Crée la variable $compteur de session si elle existe pas
· l’incrémente à chaque affichage de la Page 1
· Crée la variable $compteur_local hors session, et l’incrémente à chaque affichage de la Page 1
· Propose un bouton vers la page 2 (page « affichage »)
Page 2 (page « affichage ») :
· Se contente d’afficher la variable $compteur de la page 1
· Propose un bouton vers la page 1 (page « compteur »)
Aperçu :
ßà
Exercice 2 : sessions associées à un navigateur
Vérifier que le compteur est différent si vous lancez plusieurs navigateurs clients.
Exercice 1 : Carnet avec mot de passe commun
Faites évoluer le carnet pour que l’accès en soit protégé par un mot de passe.
Ce mot de passe sera à saisir aux premier accès au Carnet. Il sera toujours le même (en dur dans le code !), sans nécessiter de saisir un nom d’utilisateur.
Problèmes à résoudre :
1. comment faire pour forcer la saisie du mot de passe la première fois ? (indication : utiliser la redirection de page)
2. comment éviter de répéter le même code « d’entrée en session » et de vérification du mot de passe et d’éventuelle redirection vers la page de mot de passe ? (indication : essayer de centraliser les opérations commune dans une page et de l’inclure)
Exercice 2 : Gestion d’accès avec utilisateurs stockés en base de données
Faites évoluer le carnet pour gérer des droits d’utilisateurs :
1. Créer dans la base MySQL une table utilisateur dans la base de données Mysql, contenant au moins 2 colonnes : un nom utilisateur et un mot de passe
2. Insérer des valeurs dans cette table grâce à phpmyadmin
3. Modifier l’accès au carnet d’adresse pour que le contrôle par mot de passe s’appuie sur cette table
Exercice 3 : page de logout
Créer une page (ou un lien) de « logout », cad pour fermer la session php et toutes les variables rattachées.
Exercice 4 : crypter le mot de passe
Problème à résoudre : comment éviter de stocker dans la base de données le mot de passe en clair ? (indication : utiliser la fonction password() )
Exercice 1 : compteurs de modifications
Gérer des compteurs de création, modification dans des variables de session. Afficher ces compteurs dans la page de liste uniquement.
Exercice 2 : nom de l’utilisateur
Etendre la table de données mysql pour les utilisateurs afin que l’on puisse y saisir le nom complet et le prénom complet de l’utilisateur
Lors d’une connexion, récupérer dans des variables de session le nom, le prénom complet de l’utilisateur depuis la base de données, ainsi que l’heure de connexion, et les afficher en haut de chaque page ensuite.
Faire les modifications nécessaires pour qu’un seul utilisateur (un administrateur), ait accès à des pages php spéciales permettant d’ajouter de nouveaux utilisateurs avec leur mot de passe.
Permettre également les opérations :
· De modification d’utilisateur
· De suppression d’utilisateur